package cn.itcast.com.IO.zijieliu.buffer;

import java.io.*;
/*
    要创建缓冲流对象，必须早构造方法中，接受一个普通的相应类
    型流，包装它······
    在关闭流的时候我们只需要关闭包装流，不需要关闭包装流所
    包装的底层流，因为一个标准的包装流会自己负责关闭自己包
    装的底层流

    装饰者模式，两者之间可以相互替代，基于已有的功能实现更加
    强大的功能
 */


public class buffer {
    public static void main(String[] args) throws IOException {
        FileOutputStream fileOutputStream = new FileOutputStream("b.txt");
        OutputStream out = new BufferedOutputStream(fileOutputStream);

        FileInputStream fileInputStream = new FileInputStream("a.txt");
        InputStream in = new BufferedInputStream(fileInputStream);

        int len;
        byte[] byteBuff = new byte[1024];
        while ((len = in.read(byteBuff))!=-1){
            out.write(byteBuff,0,len);
        }
    }
}
